1. Field of the Invention
The present invention relates to floating-gate transistors and, more particularly, to programming floating-gate transistors for use in analog circuitry.
2. Description of Related Art
Floating-gate transistors are commonly utilized in non-volatile storage devices, such as flash memory, erasable programmable read-only memory (EPROM), and electrically erasable programmable read-only memory (EEPROM). Floating-gate metal-oxide semiconductor field-effect transistors (MOSFETs), the most commonly used floating-gate transistors, are capable of storing an electrical charge for extended periods of time without requiring an additional power supply. A floating-gate MOSFET typically includes a control gate and a floating gate, such that, when provided an electrical charge through hot-electron injection and/or Fowler-Nordheim tunneling, the charge is retained on the floating-gate due to an insulating oxide.
Floating-gate transistors may also be used in more complicated circuitry. For example, a floating-gate MOSFET (FET) may be a desirable switch element for use in a field-programmable analog array (FPAA) crossbar switch network, due to the programmed FET having a resistance similar to that of a transmission gate (T-gate) and the capacitance of a single pass-FET, while requiring no digital memory to store the state of the switch.
Generally, an FPAA is a programmable integrated circuit capable of implementing an enormous range of analog signal processing functions. The FPAA typically comprises a computational analog block (CAB) and an interconnect network, such that an FPAA may be distinguished from another by these two components. For the interconnect structure, an FPAA is most commonly connected by metal-oxide semiconductor (MOS) transistor switches driven by digital memory. Such a MOSFET (e.g., pass-FET), however, inherently includes non-linear resistance, thereby dramatically reducing the range of passable signals in comparison to the range of the power supply. Conventional alternatives to pass-FETs and T-gates often provide increased bandwidth and include Gm-C amplifiers, 4-transistor transconductors, and current conveyors. Unfortunately, each of these alternatives trade area for improved switch characteristics and require an additional physical memory element for maintaining connectivity within the FPAA.
As the industry pushes toward shorter design cycles for analog integrated circuits, the need for an efficient and effective FPAA becomes paramount. Indeed, the role of analog integrated circuits in modern electronic systems remains important, even with the advent of digital circuits. Analog systems, for example, are often used to interface with digital electronics in applications such as biomedical measurements, industrial process control, and analog signal processing. More importantly, analog solutions may become increasingly competitive with digital circuits for applications requiring dense, low-power, and high-speed signal processing.
Referring back to FPAA crossbar switch networks, the utilization of a floating-gate switch (e.g., FET) as the transmission element eliminates the need for digital memory and reduces resistance limitations, while maintaining a minimally sized switch element. Unfortunately, programming floating-gate switches within an FPAA crossbar switch network is no easy task. To complicate matters, the programming circuitry for floating-gate circuits is currently off-chip, thereby leading to a large programming time limited mainly by the use of an ammeter for current measurement. The larger capacitance at the board level also prevents running the programming circuitry at higher speeds.
As integrated circuits trend toward the use of lower power and lower voltage, the floating-gate transistor provides promise for switches functioning on a decreased supply voltage (as resistance on a switch increases due to the loss in the gate drive caused by the lower voltage). Floating-gate transistors may also be effectively used for precisely programming a large array of current sources in a circuit. Unfortunately, present floating-gate programming techniques require disconnection of the floating-gate transistor from the rest of the circuit, while the floating-gate is programmed.
Conventionally, floating-gate transistors may be directly programmed with a combination of hot-electron injection and Fowler-Nordheim tunneling, thereby permitting the floating-gate transistors to act as precise current sources. In order to permit programming of these floating-gate transistors, however, T-gates are typically added to the circuit in order to permit the disconnection of each floating-gate transistor from the circuit during a programming phase and to permit the reconnection of the floating-gate transistor to the circuit during a run-time phase. The addition of a 2-to-1 multiplexer for every floating-gate transistor to be programmed can be costly. The process of disconnecting the floating-gate transistor from the circuit may decrease the maximum speed of operation and the overall accuracy of the circuitry. Moreover, the addition of the 2-to-1 multiplexers significantly increases the required die real-estate (e.g., silicon footprint) and necessary supply overhead.
What is needed, therefore, is a system and method of effectively programming a floating-gate array, such as an FPAA crossbar switch network, utilizing programmable floating-gate switches, such that digital memory is not needed to store the state of the switch. Further, what is needed is a system and method for programming floating-gate transistors on-chip to reduce programming delays, without compromising circuitry performance. Moreover, what is needed is a system and method of programming floating-gate transistors that does not require disconnection of the floating-gate transistors from the circuitry and that does not necessarily require the addition of a 2-to-1 multiplexer for every floating-gate transistor to be programmed. It is to such systems and methods that the present invention is primarily directed.